<html>
<body>

<h3>函数功能</h3>该函数将一个消息放入（寄送）到指定线程的消息队列里，不等待线程处理消息就返回。<br>
<h3>函数原型</h3>BOOL PostThreadMessage（DWORD idThread，UINT Msg，WPARAM wParam，LPARAM IParam）；<br>
参数<br>
idThread：其消息将被寄送的线程的线程标识符。如果线程没有消息队列，此函数将失败。当线程第一次调用一个Win 32 USER或GDI函数时，系统创建线程的消息队列。要得到更多的信息，参见备注。<br>
Msg：指定将被寄送的消息的类型。<br>
wParam：指定附加的消息特定信息。<br>
IParam：指定附加的消息特定信息。<br>
<h3>返回值</h3>如果函数调用成功，返回非零值。如果函数调用失败，返回值是零。若想获得更多的错误信息，请调用GetLastError函数。如果idThread不是一个有效的线程标识符或由idThread确定的线程没有消息队<br>
列，GetLastError返回ERROR_INVALID_THREAD。<br>
备注：消息将寄送到的线程必须创建消息队列，否则调用PostThreadMessage会失败。用下列方法之一来处理这种情况：<br>
调用PostThreadMessage。如果失败，调用Sleep，再调用PostThreadMessage，反复执行，直到PostThreadMessage成功。<br>
创建一个事件对象，再创建线程。在调用PostThreadMessage之前，用函数WaitForSingleObject来等特事件被设置为被告知状态。消息将寄送到的线程调用PeedMessage（￡msg，NULL，WM_USER，WM_USER，PM_NOREMOVE）来强制系统创建消息队列。设置事件，表示线程已准备好接收寄送的消息。<br>
消息将寄送到的线程通过调用GetMesssge或PeekMesssge来取得消息。返回的MSG结构中的hwnd成员为NULL。<br>
<h3>速查</h3>Windows NT：3.1及以上版本；Windows：95及以上版本；Windows CE：1.0及以上版本：头文件：winuser.h；输入库：user32.lib；Unicode：在Windows NT环境下以Unicode和ANSI方式实现。<br>


</body>
</html>
